Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding Contour Ingress support #82

Merged
merged 20 commits into from
Jun 27, 2024
Merged

Adding Contour Ingress support #82

merged 20 commits into from
Jun 27, 2024

Conversation

dobrerazvan
Copy link

Description

This PR includes support for Contour Ingress controller. Instead of creating envoy deployments, it creates HTTPProxies for external listeners.

Type of Change

  • Bug Fix
  • New Feature
  • Breaking Change
  • Refactor
  • Documentation
  • Other (please describe)

Checklist

  • I have read the contributing guidelines
  • Existing issues have been referenced (where applicable)
  • I have verified this change is not present in other open pull requests
  • Functionality is documented
  • All code style checks pass
  • New code contribution is covered by automated tests
  • All new and existing tests pass

@dobrerazvan dobrerazvan changed the title Addin Contour Ingress support Adding Contour Ingress support May 13, 2024
controllers/kafkacluster_controller.go Outdated Show resolved Hide resolved
controllers/tests/kafkacluster_controller_contour_test.go Outdated Show resolved Hide resolved
@dobrerazvan
Copy link
Author

Thanks @aguzovatii for the review. I implemented your suggestions by removing the useless comments.

@dobrerazvan dobrerazvan merged commit b1e9544 into master Jun 27, 2024
8 of 9 checks passed
@dobrerazvan dobrerazvan deleted the contour branch June 27, 2024 12:30
dobrerazvan added a commit that referenced this pull request Jun 27, 2024
hvan pushed a commit that referenced this pull request Nov 13, 2024
* Fix flaky test by deleting nodeports explicitly (#67)

* Upgrade Kafka to 3.6.0 (#69)

* Upgrade dependencies

* Fix wrong port on expectEnvoyWithConfigAz2Tls test (#70)

* Upgrade Kafka to 3.6.1 (#71)

Co-authored-by: Petruț™ <[email protected]>

* Upgrade Kafka image to use Java v21 (#72)

* Added arm64 to docker build platforms (#73)

* Added arm64 to docker build platforms

* Regenerated headers for 2024

* Upgrading Kafka to 3.7.0 (#77)

* Update codeql-analysis.yml (#78)

* [INTERNAL] Create uniq leader ID per operator deployment (#76)

* [INTERNAL] Get watched namespaces from env variable (#75)

(cherry picked from commit de6500b)

* [CORE-106517] Fix outdated config in the sample (#83)

* Cross-compile koperator for arm and intel. (#84)

* Adding Contour Ingress support (#82)

* Allow property security-inter-broker-protocol  (#85)

* adding the ability to use security-inter-broker-protocol in koperator

* updating util.go to remove _ for generated names

* adding replace all for external listener port name

* fixing other places where externallistener name is used to not have _

* adding an alternative way to identify which port to use for kafka administration and cc connection

* taking out comments for pr push

* fixing kafka crd

* setting omitempty so it will not be required

* adding generated crds

* adding comments with context for new flag UsedForKafkaAdminCommunication

* Use getBrokerReadOnlyConfig function to get properties and update unit test - security_inter_broker_protocol_Set

* Update crds to match generated manifest

---------

Co-authored-by: Cameron Wright <[email protected]>
Co-authored-by: Ha Van <[email protected]>

---------

Co-authored-by: ctrlaltluc <[email protected]>
Co-authored-by: Adi Muraru <[email protected]>
Co-authored-by: Razvan Dobre <[email protected]>
Co-authored-by: Cristian-Petrut Petrache <[email protected]>
Co-authored-by: Petruț™ <[email protected]>
Co-authored-by: Adrian Muraru <[email protected]>
Co-authored-by: Adrian <[email protected]>
Co-authored-by: aguzovatii <[email protected]>
Co-authored-by: cawright-rh <[email protected]>
Co-authored-by: Cameron Wright <[email protected]>
Co-authored-by: Ha Van <[email protected]>
Co-authored-by: Daniel Vaseekaran <[email protected]>
dvaseekara added a commit that referenced this pull request Dec 9, 2024
* Fix flaky test by deleting nodeports explicitly (#67)

* Upgrade Kafka to 3.6.0 (#69)

* Upgrade dependencies

* Fix wrong port on expectEnvoyWithConfigAz2Tls test (#70)

* Upgrade Kafka to 3.6.1 (#71)

Co-authored-by: Petruț™ <[email protected]>

* Upgrade Kafka image to use Java v21 (#72)

* Added arm64 to docker build platforms (#73)

* Added arm64 to docker build platforms

* Regenerated headers for 2024

* Upgrading Kafka to 3.7.0 (#77)

* Update codeql-analysis.yml (#78)

* [INTERNAL] Create uniq leader ID per operator deployment (#76)

* [INTERNAL] Get watched namespaces from env variable (#75)

(cherry picked from commit de6500b)

* [CORE-106517] Fix outdated config in the sample (#83)

* Cross-compile koperator for arm and intel. (#84)

* Adding Contour Ingress support (#82)

* Allow property security-inter-broker-protocol  (#85)

* adding the ability to use security-inter-broker-protocol in koperator

* updating util.go to remove _ for generated names

* adding replace all for external listener port name

* fixing other places where externallistener name is used to not have _

* adding an alternative way to identify which port to use for kafka administration and cc connection

* taking out comments for pr push

* fixing kafka crd

* setting omitempty so it will not be required

* adding generated crds

* adding comments with context for new flag UsedForKafkaAdminCommunication

* Use getBrokerReadOnlyConfig function to get properties and update unit test - security_inter_broker_protocol_Set

* Update crds to match generated manifest

---------

Co-authored-by: Cameron Wright <[email protected]>
Co-authored-by: Ha Van <[email protected]>

* Revert "Allow concurrent broker restarts from same AZ (broker rack) (#62)"

This reverts commit 514fa07.

* Fixed build issues

* Fix TestGenerateBrokerConfig

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added watch namesapces

* Added tmate for debugging

* Added tmate for debugging

* Added tmate for debugging

* Added enabled projectcontour helm install

* Enabled cloud-provider-kind

* Added ProjectContour cluster role

* updated certificate name

* updated certificate name

* Run without SSL

* Removing Project Contour

* Adding cloud-provider-kind

* Removing cloud-provider - manually adding during test

* trigger test

* Remove SnpshotClusterAndCompare

* Increased log length for Snapshot and Compare

* Re-Add Snapshot and compare

* Increased log length for Snapshot and Compare

* Increased log length even more

* Add Uninstall Contour CRDs

* Re-Add KafkaCluster_SSL Tests

* Removing BanzaiCloud Helm Chart from list of repos

* pushing up latest go.sum

* Clean up Merge

* Enabling Tmate to debug e2e Test

* Revert Cert Changes

* Revert "Revert Cert Changes"

This reverts commit 5c5b19c.

* Enable sslClientAuth

* trigger test

* WIP: Fix Listener Config

* Clean up test case results - tc-1

* Clean up test case results - tc-2

* Updated Kraft Test Cases

* Cleanup Linting Issues

* Remove Tmate Debugger

* Run Kraft CLuster E2E

* Add kraft e2e test

* Revert Test

---------

Co-authored-by: ctrlaltluc <[email protected]>
Co-authored-by: Adi Muraru <[email protected]>
Co-authored-by: Razvan Dobre <[email protected]>
Co-authored-by: Cristian-Petrut Petrache <[email protected]>
Co-authored-by: Petruț™ <[email protected]>
Co-authored-by: Adrian Muraru <[email protected]>
Co-authored-by: Adrian <[email protected]>
Co-authored-by: aguzovatii <[email protected]>
Co-authored-by: cawright-rh <[email protected]>
Co-authored-by: Cameron Wright <[email protected]>
Co-authored-by: Ha Van <[email protected]>
Co-authored-by: Daniel Vaseekaran <[email protected]>
dvaseekara added a commit that referenced this pull request Dec 11, 2024
* Fix flaky test by deleting nodeports explicitly (#67)

* Upgrade Kafka to 3.6.0 (#69)

* Upgrade dependencies

* Fix wrong port on expectEnvoyWithConfigAz2Tls test (#70)

* Upgrade Kafka to 3.6.1 (#71)

Co-authored-by: Petruț™ <[email protected]>

* Upgrade Kafka image to use Java v21 (#72)

* Added arm64 to docker build platforms (#73)

* Added arm64 to docker build platforms

* Regenerated headers for 2024

* Upgrading Kafka to 3.7.0 (#77)

* Update codeql-analysis.yml (#78)

* [INTERNAL] Create uniq leader ID per operator deployment (#76)

* [INTERNAL] Get watched namespaces from env variable (#75)

(cherry picked from commit de6500b)

* [CORE-106517] Fix outdated config in the sample (#83)

* Cross-compile koperator for arm and intel. (#84)

* Adding Contour Ingress support (#82)

* Allow property security-inter-broker-protocol  (#85)

* adding the ability to use security-inter-broker-protocol in koperator

* updating util.go to remove _ for generated names

* adding replace all for external listener port name

* fixing other places where externallistener name is used to not have _

* adding an alternative way to identify which port to use for kafka administration and cc connection

* taking out comments for pr push

* fixing kafka crd

* setting omitempty so it will not be required

* adding generated crds

* adding comments with context for new flag UsedForKafkaAdminCommunication

* Use getBrokerReadOnlyConfig function to get properties and update unit test - security_inter_broker_protocol_Set

* Update crds to match generated manifest

---------

Co-authored-by: Cameron Wright <[email protected]>
Co-authored-by: Ha Van <[email protected]>

* Revert "Allow concurrent broker restarts from same AZ (broker rack) (#62)"

This reverts commit 514fa07.

* Fixed build issues

* Fix TestGenerateBrokerConfig

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added LoadBalancer for Kind E2E test cluster

* Added watch namesapces

* Added tmate for debugging

* Added tmate for debugging

* Added tmate for debugging

* Added enabled projectcontour helm install

* Enabled cloud-provider-kind

* Added ProjectContour cluster role

* updated certificate name

* updated certificate name

* Run without SSL

* Removing Project Contour

* Adding cloud-provider-kind

* Removing cloud-provider - manually adding during test

* trigger test

* Remove SnpshotClusterAndCompare

* Increased log length for Snapshot and Compare

* Re-Add Snapshot and compare

* Increased log length for Snapshot and Compare

* Increased log length even more

* Add Uninstall Contour CRDs

* Re-Add KafkaCluster_SSL Tests

* Removing BanzaiCloud Helm Chart from list of repos

* pushing up latest go.sum

* Clean up Merge

* Enabling Tmate to debug e2e Test

* Revert Cert Changes

* Revert "Revert Cert Changes"

This reverts commit 5c5b19c.

* Enable sslClientAuth

* trigger test

* WIP: Fix Listener Config

* Clean up test case results - tc-1

* Clean up test case results - tc-2

* Updated Kraft Test Cases

* Cleanup Linting Issues

* Remove Tmate Debugger

* Run Kraft CLuster E2E

* Increate Timeout to allow pod termination

* Trigger Test

* Added Debugger

* Fix App Labels for Controllers

* Revert image upate

* Revert "Fix App Labels for Controllers"

This reverts commit a3cf8a5.

* Include Broker/Controller Labels for Headless SVC Selector

* Logic for controller listener

* add controller service

* Added Headless-Controller-SVC Labels

* Fix controller addresses and labels for brokers

* Empty commit to trigger e2e

* Set up kafka-3 as controller only for troubleshooting

* Empty commit to trigger e2e

* Use controller address for JMXTemplate

* Update uninstall timeout to 600s

* fix lint

* fix lint

* fix lint

* Enable TMate Debugger

* Trigger E2E

* Updated BrokerIdLabelkey

* Updated BrokerIdLabelkey

* Check for Kraft mode when setting the controller listener

* Check for Kraft mode when setting the controller listener

* Disable tmate from e2e test

* adding //nolint:unparam to testProduceConsumeInternal func now that it is used twice

* moving the //nolint:unparam to the none-ssl version

* Fixed BrokerLabel Test

* Add additional test cases for TestGetBrokerLabels

* Add additional test cases for TestGetBrokerLabels

* commenting out broker-1 in test to fix kraft test

* adding conditional to check if kraft mode is enabled before selecting which expected results in test

---------

Co-authored-by: ctrlaltluc <[email protected]>
Co-authored-by: Adi Muraru <[email protected]>
Co-authored-by: Razvan Dobre <[email protected]>
Co-authored-by: Cristian-Petrut Petrache <[email protected]>
Co-authored-by: Petruț™ <[email protected]>
Co-authored-by: Adrian Muraru <[email protected]>
Co-authored-by: Adrian <[email protected]>
Co-authored-by: aguzovatii <[email protected]>
Co-authored-by: cawright-rh <[email protected]>
Co-authored-by: Cameron Wright <[email protected]>
Co-authored-by: Ha Van <[email protected]>
Co-authored-by: Daniel Vaseekaran <[email protected]>
Co-authored-by: Ha Van <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants